热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

干货|吴恩达关于机器学习职业生涯以及阅读论文的一些建议(附链接)

来源:AI公园本文约2800字,建议阅读7分钟。本文将介绍关于吴恩达如何建立机器学习职业生涯的建议。介绍既然你已经在阅读这篇文章了,那么你

640?wx_fmt=png

来源:AI公园

本文约2800字,建议阅读7分钟

本文将介绍关于吴恩达如何建立机器学习职业生涯的建议。

介绍


既然你已经在阅读这篇文章了,那么你可能已经知道该领域的先驱之一Andrew Ng是谁,并且你可能对会对他关于如何建立机器学习职业生涯的建议感兴趣。


本博客总结了斯坦福大学CS230深度学习课程在YouTube上的演讲:对职业发展的一些建议以及阅读研究论文的方法,


链接:https://www.youtube.com/watch?v=733m6qBHjI&list=PLoROMvodv4rOABXSygHTsbvUz4G_YQhOb&index=9&t=0s


我建议大家多看看这堂课,内容很丰富。不过,我想不管你看不看,你都会发现这篇文章很有帮助。因此,我试图在这里概述这些建议。


跳到关键的要点部分。


Andrew特别提出两项主要建议:


  • 阅读研究论文:他使用的非常有效的技巧,当他试图在深度学习中掌握一个新主题时,他会阅读研究论文。

  • 在机器学习领域开创事业的建议。


读研究论文


你如何通过阅读研究论文来高效和相对快速地学习?所以,如果你想从学术文献中学习,你应该做什么,无论是你想学习建立一个感兴趣的机器学习系统/项目,还是仅仅停留在事情的顶端,获得更多的知识,成为一个深入学习的人。


以下是清单:


  • 编写一份论文列表:尝试创建一份研究论文列表、包括你拥有的任何文本或学习资源。

  • 过一遍列表:基本上,你应该以一种并行的方式阅读研究论文,意思是一次处理多篇论文。具体地说,试着快速浏览并理解每一篇文章,而不是全部读完,也许你读了每一篇文章的10-20%,也许这足以让你对手头的文章有一个高水平的理解。在那之后,你可能会决定删除其中的一些论文,或者只是浏览一两篇论文,把它们通读一遍。


他还提到,如果你读到:


5-20篇论文(在选择的领域,比如语音识别)=>这可能是足够的知识,你可以实现一个语音识别系统,但可能不够研究或让你处于前沿。


50-100篇论文=>你可能会对这个领域的应用(语音识别)有很好的理解。


如何读论文?


不要从头读到尾。相反,需要多次遍历论文,下面是具体如何做的:


  • 阅读文章标题、摘要和图:通过阅读文章标题、摘要、关键网络架构图,或许还有实验部分,你将能够对论文的概念有一个大致的了解。在深度学习中,有很多研究论文都是将整篇论文总结成一两个图形,而不需要费力地通读全文。

  • 读介绍+结论+图+略过其他:介绍、结论和摘要是作者试图仔细总结自己工作的地方,以便向审稿人阐明为什么他们的论文应该被接受发表。

    此外,略过相关的工作部分(如果可能的话),这部分的目的是突出其他人所做的工作,这些工作在某种程度上与作者的工作有关。因此,阅读它可能是有用的,但如果你不熟悉这个主题,有时很难理解。

  • 通读全文,但跳过数学部分。

  • 通读全文,但略过没有意义的部分:出色的研究意味着我们发表的东西是在我们的知识和理解的边界上。


他还解释说,当你阅读论文时(即使是最有影响力的论文),你可能也会发现有些部分没什么用,或者没什么意义。因此,如果你读了一篇论文,其中一些内容没有意义(这并不罕见),那么你可以先略读。除非你想要掌握它,那就花更多的时间。


当你阅读一篇论文时,试着回答以下问题:


  • 作者试图完成什么

  • 这个方法的关键要素是什么

  • 你自己能做什么

  • 你还想要什么其他的参考资料


如果你能回答这些问题,就很有希望的能反映出你对论文有很好的理解。


事实证明,当你读更多的论文时,通过练习你会变得更快。因为,很多作者在写论文时使用的是通用格式。


例如,这是作者用来描述网络架构的一种常见格式,特别是在计算机视觉中:


640?wx_fmt=png


理解一篇论文需要花多少时间?


对于刚接触机器学习的人来说,理解一篇相对简单的论文可能需要一个小时,这并不罕见。但是,有时你可能会偶然发现需要3个小时甚至更长时间才能真正理解的论文。


论文的来源


网上有很多很棒的资源。例如,如果你是新手,列出语音识别领域中最重要的论文的博客文章将非常有用。


随着深度学习的快速发展,很多人都试图跟上它的最新进展。所以,你应该这样做:


  • Twitter:令人惊讶的是,Twitter正成为研究人员发现新事物的重要场所。

  • ML subreddit:https://www.reddit.com/r/MachineLearning/。

  • 重要的机器学习会议:NIPS/ICML/ICLR。

  • 朋友:找一个对该领域感兴趣的社区或一群朋友,分享有趣的研究论文。


更加深入的理解文中的数学部分


试着从头开始重新推导。虽然,这需要一些时间,但这是一个很好的练习。


代码练习


  • 下载开源代码(如果你能找到的话)并运行它。

  • 从头开始重新实现:如果你能够做到这一点,那么这是一个强烈的信号,表明你已经真正理解了手头的算法。


持续进步


最重要的是不断学习,变得更好是指更加稳定的学习,而不是集中一段时间内读大量的论文。与其在短时间内死记硬背,不如从明年开始每周读两篇论文。


对机器学习职业生涯的一些建议


无论你的目标是找一份工作(大公司、初创公司和教职员工的职位),还是进行更高级的研究生学习(也许参加一个博士项目)。


只要专注于做重要的工作,把你的工作看作是一种策略,一个做有用工作的机会。


招聘人员要的是什么?


  • 机器学习能力。

  • 有意义的工作:表明你能胜任这份工作的项目。


对于成功的机器学习工程师(优秀的求职者)来说,一个非常常见的模式是开发一个T型知识库。意思是对人工智能中许多不同的主题有广泛的理解,并在至少一个领域有非常深刻的理解。


640?wx_fmt=jpeg

构建横向能力


在这些领域建立基本技能的一个非常有效的方法是通过课程和阅读研究论文。


构建纵向能力


你可以通过做相关的项目、开源贡献、研究和实习来构建它。


选择一份工作


如果你想不断学习新东西,下面是影响你成功的一些因素:


  • 无论你是和伟大的人/项目一起工作:被勤奋的人包围会影响你。

  • 除了经理之外,还要关注你将与之共事的团队(10-30人,你将与他们互动最多),并对他们进行评估。

  • 不要关注“品牌”:公司的品牌与你的个人经历并没有太大的关联。


所以,如果你得到了一份工作,问问你将和哪个团队一起工作,不要接受“加入我们,之后我们会组建一个团队”的工作邀请,因为你可能会和一个团队一起做你不感兴趣的事情,这不利于自己有效地进化。


另一方面,如果你能找到一个好的团队(即使是在一家不知名的公司)并加入他们,你实际上可以学到很多东西。


一些通用的建议


  • 学得最多:倾向于选择能让你学到最多东西的工作。

  • 做重要的工作:从事有价值的项目,推动世界向前发展。

  • 尝试将机器学习带到传统行业:我们在科技行业已经改变了很多,但我认为最令人兴奋的工作之一可能是在传统行业(科技行业之外),因为你可以在那里创造更多的价值。


要点


我试着将Andrew的建议总结如下:


  1. 养成阅读研究论文的习惯:每周阅读两篇论文作为开始。

  1. 高效阅读:编制一份论文清单,一次阅读多篇论文,每篇论文都要经过多次阅读。

  1. 阅读论文时:首先阅读题目/摘要/图表(尤其是)/引言/结论。

  1. 尝试理解算法时:尝试重新推导数学并通过重新实现来练习编程。

  1. 尽量掌握最新信息,通过查看ML会议和其他在线资源中的资料。

  1. 在AI中构建一个t型知识库。

  2. 尝试加入一个好的团队(在大公司或初创公司),这将帮助你高效成长。

  3. 从事有用的项目可以帮助你学到更多,推动世界前进。

  4. 尝试将机器学习应用到其他行业:医疗、天文学、气候变化等。


—END—


原文链接:https://medium.com/@mohamedalihabib7/advice-on-building-a-machine-learning-career-and-reading-research-papers-by-prof-andrew-ng-f90ac99a0182


编辑:王菁

校对:林亦霖

640?wx_fmt=jpeg


推荐阅读
  • 本文节选自《NLTK基础教程——用NLTK和Python库构建机器学习应用》一书的第1章第1.2节,作者Nitin Hardeniya。本文将带领读者快速了解Python的基础知识,为后续的机器学习应用打下坚实的基础。 ... [详细]
  • Python 领跑!2019年2月编程语言排名更新
    根据最新的编程语言流行指数(PYPL)排行榜,Python 在2019年2月的份额达到了26.42%,稳坐榜首位置。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • Python3爬虫入门:pyspider的基本使用[python爬虫入门]
    Python学习网有大量免费的Python入门教程,欢迎大家来学习。本文主要通过爬取去哪儿网的旅游攻略来给大家介绍pyspid ... [详细]
  • 吴石访谈:腾讯安全科恩实验室如何引领物联网安全研究
    腾讯安全科恩实验室曾两次成功破解特斯拉自动驾驶系统,并远程控制汽车,展示了其在汽车安全领域的强大实力。近日,该实验室负责人吴石接受了InfoQ的专访,详细介绍了团队未来的重点方向——物联网安全。 ... [详细]
  • 对于初学者而言,搭建一个高效稳定的 Python 开发环境是入门的关键一步。本文将详细介绍如何利用 Anaconda 和 Jupyter Notebook 来构建一个既易于管理又功能强大的开发环境。 ... [详细]
  • 本周三大青年学术分享会即将开启
    由雷锋网旗下的AI研习社主办,旨在促进AI领域的知识共享和技术交流。通过邀请来自学术界和工业界的专家进行在线分享,活动致力于搭建一个连接理论与实践的平台。 ... [详细]
  • 【转】强大的矩阵奇异值分解(SVD)及其应用
    在工程实践中,经常要对大矩阵进行计算,除了使用分布式处理方法以外,就是通过理论方法,对矩阵降维。一下文章,我在 ... [详细]
  • Canopy环境安装与使用指南
    《利用Python进行数据分析》一书推荐使用EPDFree版本的环境,然而随着技术的发展,目前更多人倾向于使用Canopy。本文将详细介绍Canopy的安装及使用方法。 ... [详细]
  • 笔记说明重学前端是程劭非(winter)【前手机淘宝前端负责人】在极客时间开的一个专栏,每天10分钟,重构你的前端知识体系& ... [详细]
  • 本文详细介绍了 Node.js 中 OS 模块的 arch 方法,包括其功能、语法、参数以及返回值,并提供了具体的使用示例。 ... [详细]
  • 本文详细介绍了如何使用C#实现不同类型的系统服务账户(如Windows服务、计划任务和IIS应用池)的密码重置方法。 ... [详细]
  • AI炼金术:KNN分类器的构建与应用
    本文介绍了如何使用Python及其相关库(如NumPy、scikit-learn和matplotlib)构建KNN分类器模型。通过详细的数据准备、模型训练及新样本预测的过程,展示KNN算法的实际操作步骤。 ... [详细]
  • 2017年软件开发领域的七大变革
    随着技术的不断进步,2017年对软件开发人员而言将充满挑战与机遇。本文探讨了开发人员需要适应的七个关键变化,包括人工智能、聊天机器人、容器技术、应用程序版本控制、云测试环境、大众开发者崛起以及系统管理的云迁移。 ... [详细]
  • 在2019中国国际智能产业博览会上,百度董事长兼CEO李彦宏强调,人工智能应务实推进其在各行业的应用。随后,在“ABC SUMMIT 2019百度云智峰会”上,百度展示了通过“云+AI”推动AI工业化和产业智能化的最新成果。 ... [详细]
author-avatar
手机用户2502904705
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有